home *** CD-ROM | disk | FTP | other *** search
/ Freaks Macintosh Archive / Freaks Macintosh Archive.bin / Freaks Macintosh Archives / Textfiles / Hacking / MacTCP Info 1.3.sit / mactcp-info-13
Text File  |  1995-02-22  |  74KB  |  1,625 lines

  1. (Note to the Archivers: this file should be stored as
  2.  info-mac/comm/info/mactcp-info-13.txt; it obsoletes
  3.  info-mac/comm/info/mactcp-info-12.txt)
  4.  
  5.  
  6. MacTCP and related Macintosh software
  7. =====================================
  8. revision 1.3, February 14, 1995
  9.  
  10. ----------------------------------------------------------------
  11. Copyright Eric Behr, Northern Illinois University, Mathematics
  12. Department (behr@math.niu.edu)
  13.  
  14. This document can be freely redistributed in whole or in part,
  15. provided that this copyright notice is included intact, and that
  16. no material profit is generated from such a transaction.
  17. ----------------------------------------------------------------
  18.  
  19. With sincere thanks to:
  20.   Jim Browne -- for his HTML version of the previous revision
  21.   David N. Blank-Edelman, Steve Dorner, Patrick Hoepfner,
  22.      Peter N. Lewis, David S. Saunders -- for reviewing the
  23.      previous revisions
  24.   Adam Engst and Patrick Hoepfner (again!) for extensive comments
  25.      about this version
  26.   Mikael Hansen -- for his nagging
  27.  
  28. as well as to several contributors to Usenet newsgroups, and to all
  29. those who sent me corrections and suggestions (but I'm the sole
  30. author of all mistakes, omissions and inanities).
  31.  
  32. The newest release of these notes can be obtained by anonymous ftp to
  33. ftp.math.niu.edu (the text file /pub/mac/doc/mactcp.txt), or by gopher
  34. to gopher.math.niu.edu ("Help Files/Help For Macintosh Users"), or
  35. as http://www.math.niu.edu/~behr/docs/mactcp.html. The HTML version
  36. is usually updated first and may be more accurate.
  37.  
  38. Please send all comments and suggestions to behr@math.niu.edu.
  39.  
  40. If you want to make me and my family happy, please send a postcard to
  41.   Eric Behr
  42.   NIU, Math, WH 320
  43.   DeKalb, IL 60115
  44. Thank you!
  45. ----------------------------------------------------------------
  46.  
  47.  
  48. CONTENTS
  49.  
  50.             PREFACE
  51.          I. Generalities
  52.         II. MacTCP
  53.        III. Installation
  54.         IV. Configuration
  55.          V. Applications
  56.         VI. Sources
  57. Appendix A. FTP primer
  58. Appendix B. Elements of Macintosh networking
  59. Appendix C. Dial-in access
  60. Appendix D. MacTCP error codes
  61.  
  62. ----------------------------------------------------------------
  63.  
  64.  
  65. PREFACE
  66.  
  67. In the past few years the Internet, once an obscure tool used
  68. primarily by academicians, has become a household word. This surge in
  69. popularity created great demand for information about software used
  70. to connect to the "Net", and to navigate its vast expanse.
  71.  
  72. Macintosh users are blessed with a cornucopia of excellent and
  73. innovative software packages for use with the Internet. Nearly all of
  74. them use the MacTCP driver from Apple.
  75.  
  76. I've spent many hours installing MacTCP on various Macs. I also
  77. devoted a large part of my free time to digging up various useful
  78. applications for use on the Internet. Hopefully some of my
  79. experiences will be helpful to you.
  80.  
  81. Please note that I'm not a networking expert. Moreover, in recent
  82. months I have been involved with Macs much less than I used to, so
  83. some of my advice is second-hand. 
  84.  
  85. Those readers who are new to the field of Macintosh networking might
  86. get something out of Appendix B -- please look at it before you
  87. continue.
  88.  
  89.  
  90. I. Generalities
  91.  
  92. 1. Let's begin with a short sermon
  93.  
  94. I started using the Internet several years ago, and it has become an
  95. important part of my life - for better or worse. I know that many
  96. people share my feelings about it. For the sake of all of us, please
  97. be considerate! There are lots of things you can mess up if you don't
  98. know what you are doing. Connecting your computer to the network
  99. which spans continents and is used by millions of people in their
  100. work is (or at least should be) a serious act.
  101.  
  102. Please follow this simple advice:
  103.  
  104. o  when in doubt, don't do anything without consulting your
  105.    local knowledgeable system administrator -- chances are that
  106.    if you don't, you will break more than you'll fix;
  107.  
  108. o  read newsgroups such as comp.sys.mac.comm, comp.sys.mac.system,
  109.    comp.sys.protocols.tcp-ip, comp.protocols.appletalk, especially
  110.    the Frequently Asked Questions collections which are posted in
  111.    most newsgroups from time to time;
  112.  
  113. o  read the flaming manuals!
  114.  
  115. o  if you are doing something especially tricky, find out how to
  116.    access Internet documents (esp. RFC's) and read the relevant
  117.    ones.
  118.  
  119.  
  120. 2. Where does the Mac fit in?
  121.  
  122. The Mac has always been a wonderful network machine. But for most
  123. people "Macintosh networking" means Apple's proprietary system called
  124. AppleTalk. The Internet uses a different networking "language". A
  125. major part of it is the protocol known by its acronym TCP/IP. To
  126. access the wonders of the Internet, a computer must understand
  127. TCP/IP.
  128.  
  129. Essentially all network software packages available for the Mac use
  130. the "MacTCP driver" from Apple. Despite its flaws, it provides a
  131. uniform interface to the low-level networking mechanisms, which in
  132. the long run makes life much easier for software developers and end
  133. users.
  134.  
  135.  
  136. 3. Various connection methods
  137.  
  138.    The necessary software is only one part of a network connection.
  139. The other, obviously, is suitable hardware. A Macintosh can be
  140. connected to the outside world in many ways:
  141.  
  142. o  with a LocalTalk or PhoneNet connector
  143. o  with an Ethernet adapter
  144. o  with a TokenRing adapter
  145. o  with a modem and suitable software
  146.  
  147. The first three methods are more reliable and provide higher speeds
  148. than the last one. However, modem connections are becoming more and
  149. more popular.
  150.  
  151. Macs on Ethernet can usually connect to the outside TCP/IP world
  152. without a problem; for a long time TCP/IP has been the protocol of
  153. choice on Ethernet networks. From the hardware point of view, all
  154. that is required here is an internal Ethernet card, an external SCSI
  155. Ethernet adapter, or -- for Macs with built-in ethernet -- a
  156. transceiver with a connector suitable for your flavor of Ethernet:
  157. coax, 10Base-T, or thick.
  158.  
  159. If you aren't sure which gadget to order, look at the network cables
  160. used throughout your site. Black TV-style cables mean that you need a
  161. coax, or 10Base-2 adapter. Thinner cables with modular plugs (like
  162. telephone ones, only a bit larger) indicate an "unshielded twisted
  163. pair", i.e. 10Base-T installation. Finally, if all you see is a
  164. (usually yellow) cable the thickness of a finger, you may need a
  165. special AUI drop cable which can be plugged into your adapter, and a
  166. thick Ethernet "vampire tap" which needs to be attached to the cable
  167. in a specific spot. In this last case, ask around -- don't do it
  168. yourself. Functionally all three types are identical, and they have
  169. nothing to do with the way MacTCP works.
  170.  
  171. Macs on LocalTalk can communicate with the outside TCP/IP world only
  172. if the LocalTalk is connected to a larger network using an IP gateway
  173. such as FastPath (Shiva), Gatorbox (Cayman Systems), Multiport
  174. Gateway (Webster Computer Corp.), EtherRoute/TCP (Compatible
  175. Systems), or one of other equivalent devices; or if such a gateway is
  176. present elsewhere on your internet, and is visible to your Mac. For
  177. small networks simpler and cheaper devices or software such as
  178. microBridge/TCP or SuperBridge/TCP from Sonic Systems can be used,
  179. even though they are not full-fledged LocalTalk-to-Ethernet routers.
  180.  
  181. There are reports of exotic solutions consisting of a PC running
  182. public domain software (PCRoute), with an old Sitka TOPS card,
  183. successfully acting as an IP gateway for a LocalTalk network, but we
  184. have not tried them.
  185.  
  186. The Apple Internet Router, which is a software package running on a
  187. Mac connected to a LocalTalk and Ethernet networks, can provide
  188. TCP/IP routing between them with the optional IP Gateway module from
  189. Apple.
  190.  
  191. Macs connected directly to Token Ring can speak TCP/IP provided that
  192. the MacTCP Token Ring Extension from Apple is installed along with
  193. the main MacTCP driver.
  194.  
  195. At this time software routing of TCP/IP between LocalTalk and Token
  196. Ring is not commercially available (any entrepreneurs out there?) The
  197. PCRoute solution mentioned above may be worth exploring here.
  198.  
  199. Please note that AppleTalk and TCP/IP are two completely different
  200. animals, even though a single Mac can use both at the same time;
  201. configuring AppleTalk functions, such as printing over the network or
  202. AppleShare, will not be discussed here.
  203.  
  204.  
  205. II. MacTCP
  206.  
  207. 1. What is it?
  208.  
  209.    For the user, it is a hybrid of a Control Panel and a System
  210. Extension; it is configured just as the Monitors or Sound panels are.
  211. For applications, it is a set of procedures which allows them to
  212. communicate with other hosts on the network using the TCP/IP
  213. protocol. It is designed to be transparent in the sense that once it
  214. is properly configured, any correctly written application can make
  215. use of it without user intervention.
  216.  
  217. A companion product, AdminTCP, is another Control Panel which lets
  218. you lock certain parameters of MacTCP in place after they have been
  219. set. Its function is to help administrators prevent users from
  220. fooling around with previously entered settings. An average person
  221. will not need AdminTCP (you can get it only by purchasing the full
  222. MacTCP kit). It is also possible that your old AdminTCP (version 1.x)
  223. will work with MacTCP 2.0.x, but that has not been extensively tested
  224. and may have dire consequences.
  225.  
  226.  
  227. 2. How to get it?
  228.  
  229. MacTCP (version 2.0.6 as of this writing) is marketed by APDA (800
  230. 282 2732). Some time ago Apple renamed the entire package "TCP
  231. Connection for the Macintosh", which can makes it easy for dealers to
  232. confuse it with a commercial product from Intercon Systems,
  233. TCP/Connect. We will continue using the generic name "MacTCP".
  234.  
  235. There are several ways of obtaining MacTCP:
  236.  
  237. o  check if your institution has a site license (for example, many
  238. universities do)
  239.  
  240. o  buy it from APDA (about $60 list)
  241.  
  242. o  buy it from a mail order Macintosh outlet (at the time of this
  243. writing MacWarehouse has it as catalog # NET0389, $49 + shipping)
  244.  
  245. o  buy a book on the Internet which includes a copy of MacTCP; e.g.
  246. Adam Engst's "Internet Starter Kit for Macintosh, Second Edition"
  247. (ISBN 1-56830-111-1) sells for about $25 or less in decent bookstores
  248.  
  249. o  buy the newest System Software from Apple; the currently shipping
  250. System 7.5 includes MacTCP
  251.  
  252. The last two methods are probably most cost-effective; the only
  253. drwaback is that you don't get the less-than-helpful manual, and a
  254. few extra files (which most users won't need anyway). 
  255.  
  256. If you want to inquire about terms of a site license, send e-mail to
  257. sw.license@applelink.apple.com.
  258.  
  259. You might still find a copy of MacTCP floating around the Net,
  260. because a few public domain packages used to include the driver.
  261. Beware: those copies are usually old (e.g. MacTCP 1.1.1), and
  262. according to the terms of the license Apple grants developers, such
  263. copies are supposed to be used *only* with the application that
  264. included them. They are not likely to work well with newer system
  265. software and CPUs, so even if you find one you may be in for a lot of
  266. hassle.
  267.  
  268. Future versions of the system software will include a newer network
  269. driver, currently known as OpenTransport, which replace MacTCP in
  270. function, if not form.
  271.  
  272.  
  273. 3. Do I have the newest version?
  274.  
  275. Even though in some cases you might be able to get away with older
  276. revisions of the software, it is a good idea to get the newest one.
  277. Currently shipping System Software 7.5 includes a copy of MacTCP
  278. 2.0.4, buried among the PowerTalk support files. Even if you don't
  279. install 7.5 (or PowerTalk), you can use this driver with earlier
  280. releases of the System. The most widely distributed versions seem to
  281. be 2.0.2 and 2.0.4, which were included with some of the very popular
  282. books.
  283.  
  284. Versions 2.0.2 and 2.0.4 should be patched to 2.0.6 with updaters
  285. distributed on on-line services by Apple (see Part VI for more
  286. information). The updaters only work on original copies of MacTCP. If
  287. you do not have the "virgin" copy, it is possible to modify the
  288. installed one so the updaters will work, but anything involving
  289. ResEdit could be tricky -- do it at your own risk: disable the system
  290. heap bit of the .ipp DRVR resource in the copy you are patching.
  291.  
  292.  
  293. III. Installation
  294.  
  295.    9 times out of 10 MacTCP can be installed simply by copying the
  296. relevant pieces into the System Folder and then configuring them.
  297. Still, non-standard extensions, or corrupted system software might
  298. make this task much more difficult.
  299.  
  300. My general advice is: start with virginal (or at least freshly
  301. updated) system files. Problems may result from improperly installed
  302. old version of AppleTalk or other resources. For example, I could
  303. never painlessly install new Ethernet drivers on any Mac which
  304. previously had some suspect proprietary network drivers installed on
  305. it. What's worse, some network applications seem to corrupt the
  306. System, and/or other important files, when they crash.
  307.  
  308. We shall leave those doomsday scenarios for later. In most cases the
  309. following procedure will work. Here we go:
  310.  
  311. o  When MacTCP is being configured, it creates two files: MacTCP DNR
  312. and MacTCP Prep (under System 7 the latter should end up in the
  313. Preferences folder). If you see old copies of those files in your
  314. System Folder, remove them now!
  315.  
  316. o  Since some virus protection utilities might think that the new
  317. files that MacTCP is installing in the System folder are viruses, it
  318. is a good idea to shut off all virus protection before you go any
  319. further.
  320.  
  321. o  If the Mac will be used on Ethernet or Token Ring, make sure you
  322. have installed the necessary physical-level network drivers. For Macs
  323. with built-in Ethernet, the drivers are most likely already there. If
  324. you are using a separately purchased network adapter, follow the
  325. manufacturer's instructions.
  326.  
  327. Apple's Ethernet drivers can be used with Apple adapters and with
  328. cards from certain manufacturers who maintain high degree of
  329. compatibility with Apple (e.g. Asante). Use the newest Apple Network
  330. Installer Disk, which you should be able to get from the local
  331. dealer, or from ftp.info.apple.com. This is particularly important
  332. with newer Macs.
  333.  
  334. o  Configure the network drivers, if necessary. Most Ethernet drivers
  335. have no user-changeable settings at all. The Token Ring driver
  336. (configured via its Control Panel) should be set for the correct
  337. speed (4 or 16 Mbps). It also lets you set the hardware address of
  338. the adapter; if your site uses locally administered addresses, you
  339. need to get one from a local administrator, and set the driver
  340. accordingly.
  341.  
  342. o  If the Mac is to be used with a dial-in connection, install and
  343. configure the relevant extensions and control panels (InterSLIP,
  344. MacSLIP, MacPPP, or similar). Follow the instructions included with
  345. the package. See also Appendix C.
  346.  
  347. o  Put a fresh copy of MacTCP (and AdminTCP, if you have it -- but it
  348. isn't essential) in the System folder. Make sure that you are using
  349. the newest version, and not one obtained from shady sources. Under
  350. System 7+, the control panel will go into the proper subfolder
  351. automatically if you drop it on top of the System Folder icon.
  352.  
  353.  
  354. IV. Configuration
  355.  
  356. 1. Variables
  357.  
  358. The following questions are crucial to the proper configuration of
  359. MacTCP. Try to find the answers to all of them before you begin.
  360.  
  361. o  What physical connection method ("link layer") are you using?
  362. Ethernet? dial-up? LocalTalk?
  363.  
  364. o  Has your Mac been assigned a fixed Internet address, or is it
  365. supposed to be getting its identity from the network? If the former,
  366. what is that address?
  367.  
  368. o  To connect to hosts outside your LAN, MacTCP needs to know the
  369. address of the "default gateway", a device which links your network
  370. with the outside world. Will the Mac be able to discover it on its
  371. own (this is most often the case)? If not, what is its address?
  372.  
  373. o  In order to understand symbolic Internet addresses such as
  374. rs.internic.net, rather than only numeric ones like 198.41.0.5,
  375. MacTCP needs to know about "nameservers", i.e. computers which
  376. translate between the two formats. What is the Internet domain in
  377. which the Mac is? What is the address of the master nameserver for
  378. that domain? What is the address of a nearby major nameserver for the
  379. "root domain"?
  380.  
  381. o  Does your LAN use subnetting? If so, what is the "subnet mask"?
  382.  
  383. Don't worry if the above sounds like black magic. Most of these
  384. questions can be answered by talking to your network administrator.
  385. Or you may have received this information from the Internet service
  386. provider when you bought dial-up access service. In some cases you
  387. won't need *all* the answers right away.
  388.  
  389.  
  390. 2. Let's do it!
  391.  
  392. You should now be ready to configure MacTCP. Open the MacTCP control
  393. panel. You should see a window with one or more icons in the top
  394. part, and a button "More..." in the bottom.
  395.  
  396. o  Click on the appropriate physical layer setting ("Ethernet
  397. Built-in", "LocalTalk", "Token Ring", "InterSLIP", "PPP", etc.) in
  398. the MacTCP panel (if it gives you that choice). If you are using a
  399. dial-up connection such as SLIP, you should have installed and
  400. configured the serial line drivers before. See Appendix C.
  401.  
  402. Let me reiterate that the physical link setting has little to do with
  403. the network resource (selected in the "Network" CDEV) which you will
  404. be using for AppleTalk functions, such as printing or AppleShare:
  405. we're dealing with strictly TCP/IP stuff.
  406.  
  407. Newer system software may refuse to load the low-level networking
  408. support at boot time if AppleTalk is disabled, preventing the Mac
  409. from talking to the network adapter. It's safer to keep AppleTalk
  410. turned on, especially when using built-in Ethernet in the newer Macs.
  411. This is also always the case if you are using TCP/IP through the
  412. LocalTalk port: you must have activated AppleTalk in the Chooser --
  413. otherwise that port is simply dead, and MacTCP doesn't know how to
  414. communicate with the outside world at all.
  415.  
  416. Here are a few rules-of-thumb for choosing the physical layer:
  417.  
  418. -  if you use LocalTalk, click the "LocalTalk" icon
  419. -  if you are on Ethernet, click "Ethernet" (or "Ethernet Built-in"
  420. on older Macs); do *not* click the "EtherTalk" icon, unless you were
  421. specifically told that you need to use a remote IP gateway
  422. -  if you are on Token Ring, click "Token Ring" (you must have
  423. installed the MacTCP Token Ring extension)
  424. -  if you are using dial-up connection such as SLIP or PPP, click the
  425. icon of the serial connection driver
  426.  
  427. Now click the "More..." button. You will see the second level panel
  428. of MacTCP (we'll call it the "inner" panel for brevity).
  429.  
  430. o  Click the appropriate radio button in the "Obtain address"
  431. section. If the administrator assigned a fixed address to your Mac,
  432. click "Manually". In almost all other cases you will use the "Server"
  433. setting. This means that the Mac's network identity will be obtained
  434. from a device such as the IP gateway, a "bootp server", the dial-up
  435. SLIP server, etc. If you use "Server" or "Dynamic" addressing, you
  436. should skip the steps involving the IP address, network class, and
  437. subnet mask -- that information will be determined by MacTCP "on the
  438. fly". Use "Dynamic" addressing only after you've double-checked that
  439. this is indeed what you need. If your network administrator isn't
  440. very familiar with MacTCP, he may mumble "dynamic" over his shoulder
  441. even when the setting should really be "Server", and this
  442. misunderstanding may cause your boss to curse you because her Mac
  443. will suddenly stop working.
  444.  
  445. o  If you use "Manual" addressing, you should now click "OK" to go
  446. back to the "outer panel" of MacTCP, and type in the address assigned
  447. to the Mac in the "IP address" edit field. Then click "More..." to
  448. get back to the inner panel.
  449.  
  450. Please remember that choosing an address at random will at best make
  451. your connections unreliable; it can also provoke unrestrained wrath
  452. of some powerful people in your organization. Courts have been known
  453. to drop bodily harm charges under much weaker extenuating
  454. circumstances. Moreover, some network numbers are illegal on the
  455. Internet. If you pick one of those, you'll be asking for a lot of
  456. trouble - in particular, you'll be getting all e-mail addressed to
  457. the University of Mars for the rest of your life.
  458.  
  459. In what follows I will use some examples which are real addresses of
  460. real computers on my network; please don't just copy them -- make
  461. sure to change them to ones that are appropriate for your setup!
  462.  
  463. o  The IP number you were assigned determines the network class.
  464. MacTCP is smart enough to figure it out by itself. Addresses
  465. beginning with 1-127 are class A, 128-191 indicates class B, and
  466. 192-254 are class C. After setting an address manually, check that
  467. the correct network class showed up.
  468.  
  469. o  You should now set the correct subnet mask. If your network does
  470. not use subnetting, make sure that the "Subnet Mask" slider is in a
  471. position where it can't move further to the left (this is the default
  472. setting that MacTCP uses). If you do use subnetting, slide it to the
  473. right so the correct mask such as 255.255.255.0 will show up above.
  474. Do not experiment here! You must use a valid address and subnet mask,
  475. or somebody will soon come looking for you and your scalp.
  476.  
  477. o  For now leave the "Gateway Address" set to 0.0.0.0; if all goes
  478. well, MacTCP will locate the default gateway by means of a magic wand
  479. called Routing Information Protocol (RIP). If you use "Manual"
  480. addressing and you know that your network does not implement RIP, or
  481. you were told by the manager to use a specific default gateway, you
  482. should enter its address now.
  483.  
  484. o  The last step is to enter the nameserver information. In the first
  485. row of edit fields under "Nameserver Information" enter the domain of
  486. your Mac (e.g. math.niu.edu), the IP address of the nameserver for
  487. that domain, and click the "Default" button. Now go to the next row,
  488. type a single period in the "Domain" field, then enter the same IP
  489. address as in the first row. Do not click "Default" here.
  490.  
  491. If you were given additional nameserver addresses, or if you wish to
  492. use a backup nameserver for your domain, enter that information in
  493. the rows below. The net result should be something like this:
  494.  
  495.  -------------------------------------
  496. | math.niu.edu   | 131.156.3.3    | x |  ("default" button on)
  497.  -------------------------------------
  498. | .              | 131.156.3.3    | o |  ("default" button off)
  499.  -------------------------------------
  500. | .              | 131.156.1.11   | o |  ("default" button off)
  501.  -------------------------------------
  502.  
  503. Close the MacTCP panel.
  504.  
  505. o  Even though MacTCP doesn't always tell you to do so, REBOOT now!
  506. Check that MacTCP DNR (and usually MacTCP Prep) files show up in the
  507. System folder.
  508.  
  509. o  Test MacTCP by running an application such as TurboGopher or
  510. Fetch. If the software doesn't complain, you should be in business.
  511. Try connecting to a reliable host by opening gopher connection to
  512. gopher.micro.umn.edu, or an ftp connection to ftp.rtfm.mit.edu.
  513. Errors such as "connection refused" are OK; this means that the site
  514. is busy. Mac system errors are bad; consult the list in Appendix D.
  515.  
  516.  
  517. 3. What can go wrong?
  518.  
  519. If things aren't working right away, you should concentrate on the
  520. following possibilities:
  521.  
  522. o  bad network or modem connection
  523. o  corrupted copy of MacTCP
  524. o  bad nameserver information
  525. o  bad default gateway setting
  526. o  conflict between system extensions
  527.  
  528. If you are on a network, the best way to check the connection is to
  529. make sure the Mac can see AppleTalk devices such as printers and
  530. AppleShare file servers. Go to the Chooser and enable AppleTalk (you
  531. may have to reboot after that). Then open the "Network" Control Panel
  532. and select the same physical connection as the one MacTCP is using
  533. (LocalTalk, Ethernet, etc.) Finally, go to the Chooser again and
  534. check whether your local printers and file servers show up. If they
  535. do, you will at least know that the wires are OK.
  536.  
  537. In case of a dial-up connection, you should obviously look at the
  538. modem lights (the "off hook", "receive data" and "transmit data"
  539. indicators). Most serial drivers such as MacPPP also have an icon or
  540. some other indicator showing whether the driver thinks the connection
  541. is active, but this isn't always reliable. You may have to resort to
  542. diagnosing the modem connection with a serial line "sniffer".
  543.  
  544. Your network or serial drivers may be corrupted, or misconfigured; it
  545. may be necessary to reinstall them from scratch. You may also be
  546. using an incorrect modem init string; Adam Engst's guide on
  547. troubleshooting such problems can be obtain by mailing a request to
  548. tisk-faq@tidbits.com.
  549.  
  550. You can use the MacTCP version of NCSA Telnet to open a connection to
  551. a major site such as rs.internic.net.If Telnet attempts to open a
  552. connection, but nothing happens, you should look at the "Connections"
  553. menu. If it says "XXX is being looked up", chances are that MacTCP
  554. isn't getting responses from the nameservers you gave it. You should
  555. try connecting to a numeric Internet address, e.g. 198.41.0.5.
  556.  
  557. If Telnet says "XXX is being opened", your Mac may not have the
  558. correct "default gateway" information. Open the MacTCP inner panel
  559. and check whether the 0.0.0.0 gateway setting has changed to
  560. something else. If it didn't, you will have to get the gateway
  561. address from the administrator and enter it manually. If you know the
  562. address of a host on your local network, you can try opening a
  563. connection to it; this should succeed even if the default gateway
  564. isn't set properly.
  565.  
  566. If your application gives a MacTCP "out of memory" error, you may be
  567. running into a problem caused by the interaction between older
  568. versions of MacTCP and a certain new implementations of Unix
  569. nameservers. The problem should be fixed by upgrading to MacTCP
  570. 2.0.6.
  571.  
  572. It may be that some other computer is using your manually assigned IP
  573. address. When MacTCP loads, it in effect says: "host with IP number
  574. so-and-so, please respond". Your Mac's IP address is used in that
  575. query. If there is no answer, all is well. But if something out there
  576. responds, MacTCP correctly assumes that there is a conflict in IP
  577. numbers, and returns an error code which most applications then
  578. translate to a less-than-helpful message like "Error opening TCP
  579. drivers - possibly no dynamic addressing". Talk to the local
  580. administrator to verify that the address you were given is not used
  581. by anyone else.
  582.  
  583. Different applications translate MacTCP error codes into different
  584. messages. Some just display the error number, which isn't very
  585. helpful. See Appendix D for a partial list of those codes, gleaned
  586. from the MacTCP Developer's Kit distributed by Apple.
  587.  
  588. Much of the above can be diagnosed with a utility MacTCP Watcher,
  589. written by Peter Lewis, and available from most Mac archives.
  590.  
  591.  
  592. 4. Drastic measures
  593.  
  594. o  If you are still having problems, trash the following from the
  595. hard disk: MacTCP, AdminTCP, MacTCP Prep, and MacTCP DNR. These files
  596. are found in the System Folder proper (in pre-7 Systems) or in
  597. various subfolders, such as Control Panels, Preferences and
  598. Extensions. Reboot and install fresh network drivers, then install
  599. MacTCP and configure it carefully again. Reboot one more time and see
  600. if all this helped. If problems persist, consider trashing not only
  601. the MacTCP files, but also the System, Finder, all network drivers
  602. and control panels (AppleTalk, EtherTalk, Network), and reinstalling
  603. fresh copies. This is almost certainly an overkill, but in some cases
  604. it is also a recipe for instant happiness. Of course, you'd better
  605. first back up all the files which seem important to you, such as
  606. non-standard extensions or fonts, which will get erased in the
  607. process! Then install a fresh system.
  608.  
  609. o  Disable all system extensions and non-essential network-related
  610. Control Panels, especially those which may be requesting network
  611. services at boot time (such as Network Time). Again, this probably
  612. isn't necessary, but who knows... As is well-known, system extensions
  613. can produce mind-boggling conflicts. When you succeed in making
  614. MacTCP work without them, you should later reinstall them one by one,
  615. checking - say - telnet after activating each of them. If MacTCP
  616. conks out, you'll know the culprit! If that happens, please publicize
  617. your findings, or at least send a note to me.
  618.  
  619. o  Remember that in case of a dial-up connection, your Mac is only
  620. one piece of the puzzle. The other end, i.e. your provider's modems,
  621. routers etc. also have to be properly configured, which might not be
  622. the case. Moreover, the provider may be unwilling to admit that
  623. something is wrong -- it's been known to happen. You may have to
  624. switch to another one. Shop around, and stick to the reputable
  625. Internet businesses.
  626.  
  627. If these radical surgeries still don't work, donate your Mac to a
  628. local school, get another one, and begin life afresh.
  629.  
  630. 5. Tricks, hints, and caveats
  631.  
  632. If you need your Mac's Ethernet hardware address for debugging
  633. purposes or simply for your records, you can get at it by holding
  634. option down while clicking the "Ethernet built-in" icon in the MacTCP
  635. panel. Another method is to log on to a nearby Unix machine, do a
  636. "ping" to your Mac's IP address, and then tell the Unix host to list
  637. its "ARP cache": arp -a on most systems. The hardware address will
  638. appear next to your Mac's name as 12 hex digits divided into pairs.
  639. For the ping to succeed you must first start up some Internet
  640. application on the Mac.
  641.  
  642. Remember that Ethernet and Token Ring handle hardware addresses
  643. differently; if the Unix host and the Mac are on those two different
  644. types on networks, you need to translate each pair of hex digits into
  645. 8 binary digits, reverse their order, and translate the whole shebang
  646. back into 12 hex digits to get the real hardware address.
  647.  
  648. Older Macs, notably the Plus, become overworked while running System
  649. 7 (more precisely, the newest versions of AppleTalk) and MacTCP 1.1.
  650. Make sure to install a new version of MacTCP.
  651.  
  652. Sometimes the physical link icons (usually the "LocalTalk built-in"
  653. icon) mysteriously disappear from the old versions of the MacTCP
  654. control panel. Make sure you are using a current MacTCP.
  655.  
  656. Don't disregard the physical connection. I've seen several reports of
  657. strange problems which were eventually traced to a bad wire or
  658. transceiver. Some of Apple's "FriendlyNet" cables for use with the
  659. Quadras were involved. Borrow a working transceiver and cable from
  660. someone and try it before blaming everything on the software.
  661.  
  662. Are things messed up, and you are stuck? Make sure to contact the
  663. vendor of the network adapter. There may be a problem which they know
  664. about. You may need to get an updated driver from them.
  665.  
  666. It was reported that the Apple cache card (for the IIci) used to
  667. cause problems with MacTCP and a lot of other things. Scream for a
  668. replacement!
  669.  
  670.  
  671. 6. Using AdminTCP
  672.  
  673. If you are responsible for configuring MacTCP in your department or
  674. organization, in some cases you will want to lock the settings you
  675. have entered, so that users with itchy hands will not fool around
  676. with them.
  677.  
  678. Open the AdminTCP panel (even an old version should work with a new
  679. MacTCP, but of course it is best to get a current one!) In the inner
  680. panel click the three checkboxes which lock the address, and click
  681. the "Protected" box. Close the panel and reboot right away.
  682.  
  683. Remember to trash AdminTCP from the user's disk afterwards, so he
  684. won't be able to unlock the settings, unless you trust the user not
  685. to mess things up intentionally.
  686.  
  687. If the prospective user is a TCP/IP sage, you should of course leave
  688. things wide open for him to play with the little buttons during long
  689. winter nights.
  690.  
  691. There are some other permutations involving, for example, locking
  692. just the network part of the address, but leaving the subnet and node
  693. numbers accessible. Please read the manual!
  694.  
  695.  
  696. 7. More about nameservers
  697.  
  698. Going into the details of the Internet Domain Name System (DNS) would
  699. make this document twice as long, so we will stick with the basics,
  700. explaining what went on when we filled in the MacTCP "Nameserver
  701. information" fields. The Domain Name System is used by computers to
  702. convert the human-friendly names such as "rs.internic.net" to numeric
  703. addresses (IP numbers) such as 198.41.0.5. Internet computers also
  704. use this system to "reverse-map" numeric addresses, i.e. to verify
  705. that your numeric address does correspond to a name which is
  706. recognized by the DNS. A part of MacTCP, the "resolver", is
  707. responsible for doing all this on your Mac.
  708.  
  709. If your network is connected to the Internet, your computer lives in
  710. some well-defined "domain". In my case, it is math.niu.edu, and a
  711. machine with address 131.156.3.3 is providing name service for that
  712. domain. I thus enter "math.niu.edu." (do not use quotes) in the Domain
  713. field, and 131.156.3.3 in the Server field next to it. I also click
  714. the Default button. This informs MacTCP that my computer is in the
  715. math.niu.edu domain, so when I tell my Mac to telnet to "sunflower",
  716. it will query the nameserver about the address of
  717. "sunflower.math.niu.edu".
  718.  
  719. If the local nameserver doesn't keep a large table of addresses, or
  720. if it is less than reliable, you will probably want to add some
  721. backup servers (this is generally a good idea). In particular, one or
  722. more Domain fields could contain the period alone to handle the "root
  723. domain", i.e. the entire Internet, with the address of a big,
  724. reliable machine next to it.
  725.  
  726. Clicking the "default" button by no means guarantees that this server
  727. will be consulted first; MacTCP first contacts those nameservers
  728. listed in the control panel which seem to match the domain name
  729. included in the query - and only if that fails, the default server is
  730. asked as a last resort. However, all domain name queries should
  731. generally go to your local nameserver first. You may want to enter
  732. your local nameserver's address in the second row as well, specifying
  733. the root domain (period) in the first field.
  734.  
  735. If the resolver is given a name without periods in it, e.g.
  736. "sunflower", it will tack on your default domain, and send out a
  737. query for "sunflower.math.niu.edu". If there is no computer by that
  738. name, the query will fail.
  739.  
  740. If the name contains periods, MacTCP considers it to be a "fully
  741. qualified domain name", and tries to match the tail of it with one of
  742. the domains you entered in the MacTCP panel. For instance, a query
  743. for "sunflower.math.niu.edu" will go to the nameserver specified for
  744. domain math.niu.edu (if any), then -- if that fails -- to the
  745. nameserver for niu.edu (if any), and finally to one of the servers
  746. for the root (.) domain.
  747.  
  748. There is currently no support for the so-called "partially qualified
  749. names"; e.g. "sunflower.math" will _not_ get anything tacked on, even
  750. though you may hope that MacTCP will be smart enough to try adding
  751. "niu.edu" to it.
  752.  
  753. A small text file called Hosts can be put in the System Folder
  754. proper; it lets you enter additional information which MacTCP uses
  755. when it carries out the name resolution process described above. For
  756. example,
  757.  
  758. clinch.math.niu.edu      IN   A   131.156.3.3
  759. math.niu.edu             IN   NS  clinch.math.niu.edu
  760. rs6000.cmp.ilstu.edu     IN   A   138.87.1.2
  761. risc                     CNAME    rs6000.cmp.ilstu.edu
  762.  
  763. in the Hosts file tells MacTCP that clinch.math.niu.edu has address
  764. 131.156.3.3, that it is a nameserver for my domain, that
  765. rs6000.cmp.ilstu.edu has address 138.87.1.2; since I connect to it
  766. often, I want my Mac to use rs6000.cmp.ilstu.edu whenever I say
  767. "risc." (if there were no dot, MacTCP would start looking for
  768. rs6000.math.niu.edu!).
  769.  
  770. A Hosts file on a Mac tends to be neglected or overlooked, unlike --
  771. say -- the NIS hosts file on your main network server. Keep this in
  772. mind when deciding whether to put a lot of information there. When IP
  773. addresses change, it may come back to haunt you, since you may not
  774. even remember it's there. It's better to rely on a reliable, properly
  775. configured and maintained nameserver for your domain.
  776.  
  777. A bug in MacTCP 2.0.4 discovered by Sylvia Elliott causes the
  778. resolver to fail on CNAMEs in the Hosts file which contain digits.
  779. MacTCP 2.0.6 may have fixed this.
  780.  
  781. The newest versions of the resolver also disallow host names which
  782. contain underscores. This has caused significant controversy; even
  783. though this is "correct" behavior according to Internet standards, 
  784. older implementations have not enforced this restriction, and there
  785. are several computers out there with such names. Until they disappear
  786. you will have to use numeric addresses to reach them.
  787.  
  788. For a list of specifications allowed in the Hosts file, see the
  789. MacTCP manual.
  790.  
  791. After modifying the Hosts file or the nameserver information in the
  792. MacTCP control panel, make sure to trash the MacTCP DNR file, and
  793. reboot right away.
  794.  
  795.  
  796. 8. Minimal setup
  797.  
  798. It is often useful to construct a minimal network consisting of two
  799. Macs running TCP/IP: either to test an application being written, or
  800. just to see this side of Mac networking in action. Here is what you
  801. should do to get such a mini-net running.
  802.  
  803. Connect the Macs with a LocalTalk cable (PhoneNet boxes at each end
  804. recommended for good reasons, even though a simple printer cable will
  805. do for those who like risks). Ethernet-ready Macs can be connected
  806. with a short piece of coax cable (good terminators at each end!), or
  807. a twisted pair cable. Do not use a hub-to-adapter cable! it won't
  808. work. You have to swap the send/receive pairs as follows:
  809.  
  810.   RJ-45 plug pins
  811.    1 -------- 3
  812.    2 -------- 6
  813.    3 -------- 1
  814.    6 -------- 2
  815. On each Mac put a file called Hosts in the System Folder; in each of
  816. them type:
  817. testa     IN   A    244.244.244.1
  818. testb     IN   A    244.244.244.2
  819. Avoid using numbers in host names, i.e. don't try test1 or mac15. And
  820. remember that you have to get official IP addresses before you  hook
  821. the Macs up to the outside world.
  822.  
  823. In MacTCP set the appropriate link icon (LocalTalk or Ethernet),
  824. addressing to manual, gateway to 0.0.0.0, and leave the nameserver
  825. information entirely blank.
  826.  
  827. In the "outer panel" set the IP address to 244.244.244.1 on one
  828. computer, and to 244.244.244.2 on the other one. Reopen the "inner"
  829. MacTCP panel and verify that subnet mask is 255.255.255.0, and that
  830. network class became C.
  831.  
  832. Enable AppleTalk in the Chooser, reboot, and you should be up and
  833. running. Install some clients and servers on the Macs (Fetch/FTPd, a
  834. Web client and httpd, and so on) and try them out.
  835.  
  836. Since MacTCP still has problems with various timing parameters, on a
  837. network like this where delays and transmission times are weird you
  838. may occasionally see errors such as "No connection in place".
  839.  
  840.  
  841. V. Applications
  842.  
  843. There are many commercial programs which use TCP/IP connectivity
  844. (InterCon Systems family of networking applications, VersaTerm from
  845. Synergy Software, MacX from Apple, just to name a few). I will not
  846. review them here because I have had little or no experience with
  847. them. Let the vendors speak for themselves.
  848.  
  849. The list of public domain or shareware software which follows is far
  850. from complete; moreover, new applications appear very often, and we
  851. cannot possibly keep it up to date. We will focus on a few most
  852. important packages which should get you started. See Part VI for
  853. information on obtaining this software.
  854.  
  855.  
  856. 1. Terminal emulation
  857.  
  858. There are currently two primary free programs which let the Mac
  859. connect to other hosts as a terminal using TCP/IP (telnet): NCSA
  860. Telnet and its derivative, tn3270.
  861.  
  862. The first one is being developed at the National Center for
  863. Supercomputing Applications in Urbana-Champaign. It emulates a vt100
  864. terminal and provides some Tektronix graphic terminal capabilities;
  865. it also implements an ftp client and server, but support for this
  866. will disappear in future versions.
  867.  
  868. The second, tn3270 written at Brown University, is a variant of
  869. Telnet which provides the IBM 3270 terminal emulation. It also
  870. supports file transfers and printer sessions, given the right
  871. software installed at the big iron end.
  872.  
  873. NCSA Telnet used to come in two versions: one which relied on MacTCP,
  874. and one which included built-in TCP/IP drivers. Starting with Telnet
  875. 2.5, the two have been merged into a single package.
  876.  
  877. You may also want to try a third package, Comet from Cornell
  878. University, which is still available from some ftp archives. It can
  879. be used over a network with MacTCP, or with an ordinary modem
  880. connection.
  881.  
  882.  
  883. 2. E-mail
  884.  
  885. There are several schemes in which a Mac can access Internet mail.
  886. The crudest way, of course, is to telnet to a host on which you have
  887. an account, and use that host's mail facilities. Another is to keep
  888. using whatever mail system you have on the AppleTalk network (e.g.
  889. QuickMail or Microsoft Mail), and then provide a SMTP gateway which
  890. will translate it to Internet mail; this tends to be expensive,
  891. sometimes unreliable, and may be difficult to maintain.
  892.  
  893. By far the most popular and convenient system is the client/server
  894. method, in which one computer uses its powerful mail software and
  895. provides service to clients such as Macs or PCs. Macintosh users have
  896. the good fortune of being able to use some excellent mail clients
  897. which work on a Mac. Eudora written by Steve Dorner leads the pack
  898. (in my humble opinion). Non-commercial versions are still maintained
  899. and supported by Steve, even though innovations and functional
  900. improvements find their way into the commercial package first.
  901.  
  902. Eudora and other similar clients allow the user to read, compose, and
  903. edit mail on the Macintosh desktop; it can print mail, save messages
  904. as Mac files, and attach Macintosh-specific files (say, formatted
  905. Word documents or even applications) to the letters using one of the
  906. encoding schemes, e.g. BinHex (see Appendix A). When it's time to
  907. process mail, Eudora contacts the server, uploads messages waiting to
  908. be sent and downloads those which the server received for you. The
  909. (supposedly) well-maintained and well-connected server computer
  910. handles the rest, so you don't need to know anything about Unix or
  911. any other alien operating system.
  912.  
  913. The current versions of Eudora also support MIME (Multi-purpose
  914. Internet Mail Extensions), a standard for transferring images,
  915. sounds, international characters etc. via the ASCII-oriented Internet
  916. e-mail.
  917.  
  918. Seting up a POP server on most Unix computers is rather trivial, but
  919. it does require superuser privileges. If you use a VAX with VMS, and
  920. some TCP/IP package is already installed, chances are that it
  921. includes a POP server. There is also a public domain POP3 server for
  922. VMS available from Indiana University, which a dear friend of mine, a
  923. computer semi-literate, got up and running without much grief. Talk
  924. to your local system administrator.
  925.  
  926. One of the selling points of the POP protocol is that several decent
  927. clients are also available for DOS and Windows computers (NuPOP,
  928. PC-Eudora from Qualcomm, etc.). Moreover, most of those clients can
  929. send and receive attachments using standard encoding; in many cases
  930. it is possible -- say -- to save a Word document as a WordPerfect DOS
  931. file on your Mac, attach it to a letter in Eudora, and send it to
  932. someone who is stuck with a WordPerfect Office mail system behind a
  933. Novell SMTP gateway...
  934.  
  935. In case you don't have a bigger machine which may be used as a POP
  936. server, don't worry; your Mac can be made into a full-blown SMTP
  937. mailer, and it then behaves like any other "real" Internet mail node.
  938. Glen Anderson's MailShare does just that, in addition to providing
  939. POP service for other Macs. If all you want is SMTP service for the
  940. individual Mac, you can try Lee Fyock's LeeMail, but MailShare is
  941. probably a better choice at this time. Naturally, a Mac configured as
  942. an independent Internet mail host had better have reliable
  943. connectivity with the world at large (and a properly configured
  944. Domain Name Resolver).
  945.  
  946.  
  947. 3. FTP
  948.  
  949. Just like Eudora seems to be the mail client of choice, Fetch by Jim
  950. Matthews reigns in the FTP area. Older clients include the HyperFTP
  951. stack, and the orphaned (but still useable) XferIt. There is also an
  952. FTP server that runs on Macs, FTPd by Peter Lewis. Anarchie is a very
  953. convenient marriage of an Archie client (which searches lists of
  954. software on anonymous FTP servers) with an FTP client.
  955.  
  956. As we will explain in Appendix A most Mac files you download will
  957. require further processing. Fetch allows you to do this painlessly if
  958. you install gadgets such as StuffIt Expander and MacGzip on your
  959. disk, and configure things so that incoming files are automatically
  960. decoded/decompressed by them.
  961.  
  962. When using FTP from a Mac, you should realize that many anonymous FTP
  963. sites do not allow connections from hosts which are unknown to the
  964. Internet nameservers. To connect to such nodes, your Mac's IP address
  965. has to "reverse-map" to a legal Internet name, like
  966. mac1.math.niu.edu. The system administrator of your nameserver
  967. computer might be willing to enter your address in his database.
  968.  
  969.  
  970. 4. Network news
  971.  
  972. There are several Mac applications designed to let you access Usenet
  973. news: Newswatcher and Nuntius are probably the most popular. I have
  974. not experimented with Nuntius, so I can only quote second-hand
  975. information: at least one of my correspondents swears by Nuntius as
  976. "the best newsreader I have seen on the Mac by far".
  977.  
  978. Reading Usenet articles usually involves downloading humongous lists
  979. of articles over a slow connection such as overloaded LocalTalk, or
  980. worse -- a modem link, keeping track of read items, and so on. This
  981. is not for the faint of heart. Many people still stick to the
  982. old-fashioned method of logging on to a bigger host and reading news
  983. there. But when it works, it's worth it! You can finally organize the
  984. saved articles on your own disk, use your favorite word processor to
  985. write replies, etc.
  986.  
  987. News clients require an address of a nearby friendly NNTP server. The
  988. server needs to be friendly in the sense that it must recognize your
  989. Mac as a host which is allowed to post news. As with FTP, this
  990. usually requires having a valid domain name, and the server must have
  991. been configured to accept uploads from your computer. Even though
  992. some servers allow free read access and only limit posting, the Mac
  993. clients will usually give up without explanation unless they are
  994. granted both permissions. This causes a lot of confusion among novice
  995. users, who then complain about "broken newsreaders".
  996.  
  997.  
  998. 5. Internet Gopher
  999.  
  1000. The Internet Gopher is a system of "gopher servers" on various
  1001. Internet hosts which can be contacted by a gopher client, passing the
  1002. connection on to other servers in a way transparent to the user. The
  1003. data on the servers are presented as menus, which can be text or
  1004. binary files, links to ftp archives or Usenet news servers, or
  1005. finally pointers to other gopher servers. It is a very convenient
  1006. mechanism for putting the bewildering spectrum of Internet services
  1007. under one roof. The principal Mac client, TurboGopher, has been
  1008. created by the designers of the gopher system at the University of
  1009. Minnesota. There is also a gopher server which runs on Macs.
  1010.  
  1011. Gopher has become one of the standard ways of providing access to
  1012. distributed information such as campus directories, WAIS servers,
  1013. on-line publications, etc. It is also the preferred method of
  1014. accessing many of the anonymous ftp sites, such as the sumex archive
  1015. at Stanford.
  1016.  
  1017.  
  1018. 6. World-Wide Web
  1019.  
  1020. In the 70's FTP was "it". In the early 90's it was the gopher. In
  1021. mid-90's, it's WWW, or "W-cubed", or World-Wide Web. Visionaries at
  1022. the European CERN laboratory in Geneva realized that hypertext ideas
  1023. (conceived quite a long time ago) could be combined with Internet
  1024. connectivity to provide a uniform access to resources "out there".
  1025.  
  1026. The idea really took off when programmers at NCSA released Mosaic, a
  1027. client application which allowed Unix machines, Macs, and PCs to
  1028. access WWW servers in a way that showed the stunning capabilities of
  1029. the system. After connecting to a WWW "page" you see text, links to
  1030. other parts of the document, icons, images, links to other pages
  1031. thousands of miles away; you can click on an icon and hear a sound;
  1032. click on an underlined address and send a note to someone; click on
  1033. an electronic newspaper's masthead and see the editor's face. Access
  1034. to other protocols such as FTP or telnet connections is integrated
  1035. into this paradigm.
  1036.  
  1037. The development of the Web has forced some other standards to evolve
  1038. rapidly. The "uniform resource locators", or URLs, are the new
  1039. language used to specify where a given item lives in the net
  1040. universe: e.g. ftp://ftp.math.niu.edu/pub/mac/doc/mactcp.txt means
  1041. "connect by FTP to the host ftp.math.niu.edu, and retrieve the file
  1042. mactcp.txt in the directory /pub/mac/doc". Together with MIME, WWW
  1043. has helped the evolution of standards for exchanging complex
  1044. documents between different systems.
  1045.  
  1046. Documents written in the WWW HyperText Markup Language (HTMLs for
  1047. short) are very flexible; they can be used to provide a help system
  1048. for local users, a tutorial for novice photographers or origami fans,
  1049. or a sound-enhanced catalog of music recordings. They are also quite
  1050. "expensive" in terms of the network load: WWW pages tend to be full
  1051. of images, sounds and icons comprised of hundreds of kilobytes of
  1052. data, sometimes causing unprecedented congestion on info-ways we all
  1053. use. Let us hope that this will soon cause an equally dramatic
  1054. increase in the bandwidth of the Internet infrastructure.
  1055.  
  1056. Two Mac clients dominate the field: NCSA Mosaic, and Netscape from
  1057. Netscape Communications Corporation. Netscape is a commercial
  1058. product: please make sure you read the accompanying license. A third,
  1059. MacWeb, is also gaining popularity. You can turn your Mac into a WWW
  1060. server with a Mac HTTP daemon application (e.g. httpd or MacHTTP),
  1061. available from many archives.
  1062.  
  1063.  
  1064. 7. Miscellaneous gadgets
  1065.  
  1066. Even if you install only the basic Internet programs, you will notice
  1067. that configuring them all is quite a balancing act. At the same time,
  1068. many of them share certain parameters: your name, address of a mail
  1069. server, preferred e-mail address, and so on. The program
  1070. InternetConfig has been created to help you organize such parameters
  1071. in one place.
  1072.  
  1073. Older versions of these notes listed a number of specialized Mac
  1074. applications which use MacTCP in this section. Since this category is
  1075. so fluid, with some programs being abandoned, and new ones showing
  1076. up, I feel it would be unfair to single out just a few packages I
  1077. like.
  1078.  
  1079. Instead, I will single out one person: Peter Lewis, who has been busy
  1080. creating useful MacTCP applications for some time now. They include
  1081. an FTP server, a MacTCP debugging application, an intelligent
  1082. "archie" client for searching and accessing FTP archives, a "talk"
  1083. program, and so on. I feel that Peter's work, which has helped many
  1084. of us enormously, deserves special recognition and support.
  1085.  
  1086.  
  1087. VI. Sources
  1088.  
  1089. There are some excellent sources of background information on the
  1090. Internet in general, and TCP/IP in particular. Two classics which
  1091. come to mind are:
  1092.  
  1093. "Zen and the Art of Internet" (by Brendan Kehoe),
  1094. "Hitchhiker's Guide to the Internet" (by Ed Krol).
  1095.  
  1096. Both can be obtained by anonymous FTP from ftp.uu.net (directory
  1097. /inet/doc). The files are Unix-compressed, so they should be
  1098. downloaded using binary mode and then decoded with a Unix-style
  1099. uncompress application. See the next section for a primer on ftp.
  1100. Note that newer editions of "Zen" are only available commercially.
  1101.  
  1102. Several FTP sites have copies of most newer Requests For Comments
  1103. (RFCs), documents which establish Internet standards. Try
  1104. rs.internic.net or nic.switch.ch. To get started download the files
  1105. rfc-index and fyi-index. There is no substitute for reading RFCs
  1106. (painful as it may be...)
  1107.  
  1108. A popular and very complete paper reference is "The Whole Internet
  1109. User's Guide and Catalog", also by Ed Krol, published by O'Reilly and
  1110. Associates.
  1111.  
  1112. A three-volume series "Internetworking with TCP/IP" by Douglas Comer
  1113. is published by Prentice Hall, and contains everything you have ever
  1114. wanted to know about the protocol that makes the Net tick.
  1115.  
  1116. Frequently Asked Questions (FAQ) files are the accepted method of
  1117. answering "newbie" questions; even if you consider yourself an
  1118. experienced 'Netter, you may want to check them out. The most
  1119. relevant one is available by FTP from rtfm.mit.edu, in the directory
  1120. /pub/usenet-by-group/comp.sys.mac.comm.
  1121.  
  1122. The main archive of public domain and shareware Mac software is
  1123. maintained on sumex.stanford.edu. There are several "mirrors" which
  1124. you may want to try when sumex is too busy to let you in, e.g.
  1125. nic.switch.ch or src.doc.ic.ac.uk, but they are often just as busy
  1126. as sumex. Another fairly complete Mac archive is on
  1127. mac.archive.umich.edu.
  1128.  
  1129. Adam Engst keeps a comprehensive collection of Mac communications
  1130. software on ftp.tidbits.com, in the directories /pub/tidbits/tisk and
  1131. /pub/tidbits/select. For announcements of new versions of this
  1132. software, WWW users should see http://www.tidbits.com/tidbits/. If
  1133. you are looking for a communications package, or an init string for
  1134. your modem, or a SLIP dialup script, those are the places to look.
  1135. You can also send mail to iskm@tidbits.com to inquire about the
  1136. current status of his "Internet Starter Kit" book.
  1137.  
  1138. Official MacTCP-related files released by Apple can be obtained by
  1139. anonymous ftp from ftp.info.apple.com and from seeding.apple.com; Web
  1140. fans can try http://www.info.apple.com. Note that Apple likes to
  1141. distribute some of its software as "disk image" files. Such files
  1142. have to be loaded into an application such as DiskCopy (available on
  1143. ftp.info.apple.com in /dts/utils) or ShrinkWrap, which can then
  1144. produce exact copies of an original master floppy disk. Moreover,
  1145. many files on Apple archives are prefixed with the lengthy
  1146. lawyer-speak section, which can justifiably confuse some BinHex
  1147. decoders; after downloading such .hqx files, use an editor to cut out
  1148. the legalese before de-BinHexing.
  1149.  
  1150.  
  1151. Here are pointers to software which is found in less obvious places:
  1152.  
  1153. Eudora:           ftp.qualcomm.com
  1154. GopherApp:        ftp.bio.indiana.edu in /util/gopher/gopherapp
  1155. MacDump:          bbn.com in /pub/MacDump
  1156. NetNews:          ftp.bio.indiana.edu in /util/mac
  1157. Netscape          ftp.mcom.com
  1158. POP servers:      ftp.qualcomm.com, ftp.cc.berkeley.edu
  1159. tn3270:           brownvm.brown.edu
  1160. TurboGopher:      boombox.micro.umn.edu in /pub/gopher
  1161. VMS POP server    ftp.indiana.edu in pub/vms/iupop3
  1162.  
  1163. This should keep you busy for now...
  1164.  
  1165.  
  1166. Appendix A. An FTP Primer
  1167.  
  1168. 1. Downloading text files
  1169.  
  1170. Use any account available to you on a well-connected host. Type "ftp
  1171. ftp.math.niu.edu". When asked for a username, reply "anonymous"; give
  1172. your mail address as password. In 9 cases out of 10, archives such as
  1173. this one will accept "ftp" in place of "anonymous", which is meant as
  1174. a favor to the new spelling-challenged generation. You will also
  1175. discover that many sites will accept any password at all, but let's
  1176. be nice to those folks who specifically ask for the real id.
  1177.  
  1178. Enter "cd /pub/mac/doc", and then "get ftp-primer.txt". When you see
  1179. "Transfer complete", type "quit" and read the file you just
  1180. downloaded.
  1181.  
  1182. After becoming skilled in using ftp, download some more text files
  1183. from the /pub/mac/doc directory on ftp.math.niu.edu:
  1184.  
  1185. help/accessing-files.txt
  1186. report/how-do-i-find.txt
  1187.  
  1188. Many more such files are on sumex.stanford.edu, in the directory
  1189. /info-mac/comm/info (most of them are mirrored on ftp.tidbits.com in
  1190. /pub/tidbits/tisk/info).
  1191.  
  1192.  
  1193. WARNING!!!
  1194. The minute you start downloading files from the network, you become
  1195. more susceptible to viral infection than before. I strongly suggest
  1196. that you should first get and set up the wonderful free virus
  1197. checker, Disinfectant. Its home is ftp.acns.nwu.edu, in directory
  1198. /pub/disinfectant; it can also be found in many other places, e.g. on
  1199. sumex.stanford edu in the directory /info-mac/virus. You may then
  1200. want to send its author, John Norstad, a nice thank-you note: we all
  1201. owe him a great deal! If you have access to Usenet news, make it a
  1202. habit to monitor the comp.sys.mac.announce group: it is probably the
  1203. most reliable source of information about newly discovered viruses.
  1204.  
  1205.  
  1206. 2. Peculiarities of Mac file transfers
  1207. Macintosh files differ from files on most other machines in that they
  1208. consist of two parts. One contains data (text, executable program),
  1209. and the other - resources (icons, the file's creator code, etc.) I'm
  1210. simplifying a little, but never mind. This complicated structure
  1211. prevents us from sharing such files directly over the network.
  1212.  
  1213. Moreover, there is only one language which practically all computers
  1214. understand: the ASCII code (plain text). Even though this isn't a
  1215. terribly elegant solution, we simply bring everything to this lowest
  1216. common denominator to assure compatibility. For example, in order to
  1217. send a file to someone by the current e-mail systems, it has to be
  1218. somehow encoded into an ASCII file.
  1219.  
  1220. The Mac community has pretty much agreed on a common standard for
  1221. doing just that: BinHex. BinHex swallows a Mac file, icons, file
  1222. creators and all, and converts all that into a plain text file filled
  1223. with something that looks like garbage; it also performs the reverse
  1224. procedure. So you need BinHex.
  1225.  
  1226. There is one obvious difficulty, however: how do you get a BinHex
  1227. decoder (a Macintosh application!), when you don't have BinHex? You
  1228. will also need software which will somehow let your Mac do FTP. The
  1229. easiest way to "bootstrap" yourself is to simply get a copy of such a
  1230. beast from a local Mac guru or a Mac User Group. If you're lucky, you
  1231. will lay your hands on a utility which can not only transfer files,
  1232. but also un-BinHex them -- such as Fetch, or TurboGopher. You can
  1233. then tell it to connect directly to, say, sumex, dowload the
  1234. interesting BinHex'ed files, and decode them while they arrive.
  1235.  
  1236. Another way is to get NCSA Telnet, log on to a friendly Internet
  1237. machine, download the applications you need to that computer in
  1238. *binary* form (e.g. the file binhex4.bin available on sumex in
  1239. /info-mac/util) using the binary mode in ftp. Then connect back to
  1240. your Mac using the Telnet FTP server and put the files on the Mac
  1241. using the MacBinary mode... It sounds (and is) a bit complicated, but
  1242. remember - this convoluted process is necessary only in the very
  1243. beginning.
  1244.  
  1245. Once again, we have just licked the surface of this topic here. For
  1246. more information, see the file /info-mac/report/ftp-primer.txt on
  1247. sumex.stanford.edu.
  1248.  
  1249.  
  1250. 3. What next?
  1251.  
  1252. When you have learned how to download Macintosh executable files,
  1253. it's time to go hunting for specific applications. Use the hints
  1254. given above to "bootstrap" yourself. The possibilities under your
  1255. fingertips are something that your parents didn't even dream about.
  1256.  
  1257. You may want to start experimenting with Gopher, and WWW at this
  1258. point. Most software available via FTP can also be downloaded using
  1259. those tools, which often let you find things more quickly and easily.
  1260. We have already mentioned another application, Anarchie, which is
  1261. invaluable in locating hard-to-find files on FTP servers.
  1262.  
  1263.  
  1264. 4. Let's end with a short sermon...
  1265.  
  1266. Many of the applications mentioned above are NOT in public domain.
  1267. They are either shareware, or there are restrictions on their use
  1268. and/or distribution. PLEASE PAY FOR SHAREWARE YOU KEEP!!! Author's
  1269. address can almost always be found by pulling down the Apple menu and
  1270. selecting "About..." Let's keep this wonderful, affordable software
  1271. alive!
  1272.  
  1273.  
  1274. Appendix B. Mac networking: mini-tour
  1275.  
  1276. In the networking world, it is easy to drown in the alphabet soup and
  1277. the sea of obscure terms. But understanding the process by which
  1278. computers communicate helps troubleshoot problems. We will go through
  1279. some elementary information in this appendix. Things may get a bit
  1280. confusing, and you may want to read what follows two or three times
  1281. until it makes sense...
  1282.  
  1283. For two digital devices to talk to each other, there must be a
  1284. physical connection between them (a wire, optical fiber, radio link,
  1285. etc.) and an agreement as to the logical organization of the
  1286. information. In computerese, such mutual understanding is usually
  1287. called a "communications protocol".
  1288.  
  1289. Apple's Macintoshes use a "native" set of protocols, collectively
  1290. known as AppleTalk. The physical aspect of AppleTalk is, very simply,
  1291. the kind of wires the device uses. If you stick a little round
  1292. connector into the printer port of your Mac, or in the jack in your
  1293. LaserWriter, you are using AppleTalk over Apple's original slow
  1294. wiring, i.e. LocalTalk. Almost nobody uses that now -- even Apple's
  1295. own network uses Farallon's Phonenet system, but that is a technical
  1296. detail. You are on LocalTalk.
  1297.  
  1298. If your Mac has an Ethernet card or external adapter attached, you
  1299. will be using AppleTalk on a physical Ethernet network; that is
  1300. called EtherTalk. Similarly, if you install a Token Ring adapter, the
  1301. incarnation of the AppleTalk protocol you are dealing with is called
  1302. TokenTalk.
  1303.  
  1304.  
  1305. The logical layer of AppleTalk handles details such as how two Macs
  1306. can discover each other on the network, how individual nodes are
  1307. uniquely identified, what should a Mac say to a printer or an
  1308. AppleShare file server when it wants to use it, and so on. The
  1309. devices you see in the Chooser (LaserWriters, file servers, or
  1310. routers such as Netway or SNA/ps) are all AppleTalk devices. The
  1311. beauty of AppleTalk is that you don't really care what physical
  1312. method you use. You may see a printer on LocalTalk, or a LaserWriter
  1313. IIg on Ethernet, or a Netway box on Token Ring -- it doesn't matter.
  1314.  
  1315. But the nitty-gritty of how the actual network operates does vary
  1316. from one kind of wire to another. The computer has to behave
  1317. differently on each kind of network, but of course you don't want to
  1318. know about that! Enter "network drivers": low-level pieces of system
  1319. software which take care of that. When you put in an Ethernet card,
  1320. you need to install the EtherTalk drivers in your system. Same with
  1321. TokenTalk drivers. It's like speaking with someone over the phone, or
  1322. on a walkie-talkie. The principle is different, but the message is
  1323. the same.
  1324.  
  1325.  
  1326. There are more and more ways of making non-Apple devices speak
  1327. AppleTalk: that's why there are MS DOS computers on LocalTalk
  1328. networks, Novell AppleShare servers, and you can configure your Sun
  1329. Sparcstation to print on an Apple LaserWriter. The Internet world,
  1330. however, doesn't know the first thing about AppleTalk. It only
  1331. understands the collection of protocols known as TCP/IP. What does
  1332. TCP/IP have to do with AppleTalk? The answer is "not much", and
  1333. "nothing" most of the time. Putting a Mac on a TCP/IP network is like
  1334. dumping an Englishman in the center of Beijing: there is a language
  1335. barrier.
  1336.  
  1337.  
  1338. MacTCP, the gadget we are discussing in this document, allows Mac
  1339. applications to use network interfaces -- such as the built-in
  1340. LocalTalk port or an Ethernet card -- to transmit and receive data
  1341. packets which contain TCP/IP information, and hence to communicate
  1342. with the millions of other TCP/IP computers on this planet.
  1343.  
  1344. Just like Apple came up with specifications for sending the
  1345. high-level (AppleTalk) data using the various low-level,
  1346. network-specific "transport protocols" (Ethernet, Token Ring etc.),
  1347. the Internet has standards for sending the high-level TCP/IP data
  1348. using the low-level network mechanisms. Ethernet is the best choice,
  1349. since the Internet protocols reached their maturity on Ethernet, so
  1350. those standards are well-established.
  1351.  
  1352. Apple adopted a certain way of sending TCP/IP data wrapped inside
  1353. LocalTalk packets, and MacTCP knows how to handle this. It puts
  1354. ("encapsulates") TCP/IP information into a normal LocalTalk packet,
  1355. and sends it out. That packet makes absolutely no sense to any
  1356. AppleTalk device (it looks like it has garbage inside), except those
  1357. which use MacTCP to do the reverse decoding.
  1358.  
  1359. A standard for transmitting TCP/IP data in Token Ring packets has
  1360. also existed for quite some time. But MacTCP did not know about it,
  1361. until Apple released an add-on "MacTCP Token Ring Extension", which
  1362. -- again -- takes a TCP/IP packet and beats it into shape before
  1363. sending it through a Token Ring card.
  1364.  
  1365.  
  1366. To make things more interesting, MacTCP used on Ethernet (or Token
  1367. Ring) is capable of two different behaviors: it can take the TCP/IP
  1368. data and spit it out unadorned, according to the usual, world-savvy
  1369. IP-on-Ethernet or IP-on-Token Ring recipe. But it can also be set to
  1370. use EtherTalk (respectively, TokenTalk), which means that it will
  1371. activate the wrapping/unwrapping AppleTalk filter between the network
  1372. interface and the application software! The general idea is *not* to
  1373. use EtherTalk or TokenTalk in MacTCP. The reason should become clear
  1374. soon.
  1375.  
  1376.  
  1377. To summarize, here are some scenarios. (a) Mac on Ethernet, MacTCP
  1378. correctly installed, "Ethernet built-in" set in the MacTCP control
  1379. panel; (b) Mac on Token Ring, MacTCP installed, the Token Ring driver
  1380. installed and configured properly, TokenRing selected in MacTCP. All
  1381. is peachy. A TCP/IP-aware application on the Mac (such as NCSA
  1382. Telnet, etc. -- see Part V) wants to communicate with a Cray at the
  1383. Space Station "Freedom", which by the time I finish this will be in
  1384. orbit. It tells MacTCP to send out a Telnet packet, MacTCP translates
  1385. it into the standard format for Ethernet or Token Ring, some gateways
  1386. down the road convert it to the TCP/IP over radio waves form, the
  1387. packets gets to the Cray, it says "Aha! we've got a hacker trying to
  1388. log in here", and so it goes.
  1389.  
  1390. Now for something more mundane. (c) Mac Plus on LocalTalk, MacTCP
  1391. installed, "LocalTalk built-in" selected in the MacTCP panel (the
  1392. only possible choice!). A TCP/IP "datagram" goes out after being
  1393. wrapped into an AppleTalk packet! Now, the LocalTalk is no doubt
  1394. connected to the outside world one way or another. If that's done
  1395. using a relatively unsophisticated device, it will take the data and
  1396. simply convert it to an equivalent EtherTalk, TokenTalk, or whatever
  1397. packet. That one goes out allright, gets up to the Cray, but it now
  1398. says: "Phooey, that's something I don't understand! It has some
  1399. strange stuff inside! Let's quickly drop it on the floor." The reason
  1400. is that most Internet hosts, like our Cray, are not instructed by
  1401. their software to go deeper inside the packet and actually recognize
  1402. that it was TCP/IP information wrapped inside AppleTalk... and why
  1403. should they bother? What is needed is a more sophisticated gateway
  1404. between the LocalTalk and the outside network.
  1405.  
  1406. Scenario (d): Mac Plus on LocalTalk sends a TCP/IP-in-AppleTalk
  1407. packet which is directed towards a "DDP-IP gateway", such as the
  1408. Fastpath, Gatorbox, EtherRoute/TCP, etc. The gateway's software is
  1409. smart enough to look under covers and see what is hiding inside. If
  1410. it sees TCP/IP data wrapped inside AppleTalk, it strips the outer
  1411. layer and passes the raw IP information in the standard format to the
  1412. Ethernet network. All is well again! LocalTalk-to-Ethernet gateways
  1413. like that are common, but equivalent ones for Token Ring are still
  1414. scarce and expensive.
  1415.  
  1416. How about (e): just like in scenarios (a) or (b), except MacTCP is
  1417. set to use EtherTalk (or TokenTalk). Now regular TCP/IP packets will
  1418. not be coming through -- MacTCP simply ignores them! It expects
  1419. AppleTalk packets only. It will be able to communicate with the Mac
  1420. Plus in (c), but not much else. So let's just forget it and stop
  1421. here...
  1422.  
  1423.  
  1424. Appendix C. Dial-in access
  1425.  
  1426. 1. ARA
  1427.  
  1428. In our personal opinion, the most elegant way to connect a Mac to a
  1429. TCP/IP network is AppleTalk Remote Access (ARA), a commercial product
  1430. of Apple Computer, bundled with PowerBooks, and sold as a separate
  1431. product.
  1432.  
  1433. ARA uses the Communications Toolbox (built into System 7, and
  1434. installable in System 6.0.x) to ship AppleTalk packets over a modem
  1435. to an ARA server, which is presumably connected to a "real" network.
  1436. MacTCP in turn uses the AppleTalk protocol to transmit "wrapped"
  1437. TCP/IP packets (if it is configured to communicate via AppleTalk).
  1438. This results in a two-stage translation: TCP/IP-to-AppleTalk, and
  1439. AppleTalk-to-modem. The data have to be decoded by a reverse process
  1440. at the other end.
  1441.  
  1442. This explains the only major drawback of ARA: speed. A 2400 baud
  1443. modem is next to unusable in this configuration. But a 9600 baud or
  1444. faster connection provides decent response even with the additional
  1445. IP encapsulation.
  1446.  
  1447. The server Mac, whether it's on Ethernet or LocalTalk, spews out
  1448. AppleTalk packets, from which the TCP/IP information has to be
  1449. reconstructed by an IP gateway. If you don't have a gateway such as
  1450. the Fastpath, GatorBox, EtherRoute, or similar, you can't use ARA for
  1451. TCP/IP access to the network.
  1452.  
  1453.  
  1454. 2. SLIP and PPP
  1455.  
  1456. The most popular dial-in connection schemes, however, employ
  1457. protocols developed specifically for that purpose, such as SLIP or
  1458. PPP. A public domain MacPPP driver is available from several Mac
  1459. archives, and is quite serviceable. There are also commercial PPP
  1460. drivers. SLIP is available on the Mac in the form of several
  1461. commercial offerings. More information on SLIP software can be found
  1462. on ftp.bio.indiana.edu in the directory /util/slip. Pat Hoepfner also
  1463. suggests reading two documents at "ftp.uu.net" in the
  1464. "vendor/MorningStar/papers" directory. These unix compressed
  1465. PostScript files are named "sug91-cheapIP.ps.Z" and
  1466. "ppp-white-paper.ps.Z".
  1467.  
  1468. A suitably configured SLIP connection gives the dial-in Macintosh all
  1469. the functionality of a node attached directly to a TCP/IP network,
  1470. even though it is of course usually much slower, even with the modern
  1471. 28,800 bps modems. Configuring reliable dial-up connection is not a
  1472. trivial matter, because the modem and the SLIP or PPP software add a
  1473. new layer of complexity. One universal rule seems to be that with
  1474. fast modems you have to: (a) use a "hardware handshaking" modem
  1475. cable; (b) set your software so it uses hardware (CTS or RTS & CTS)
  1476. handshaking; and (c) initialize the modem so it has XON/XOFF
  1477. handshaking disabled.
  1478.  
  1479. In most cases you will set MacTCP to server addressing when using
  1480. serial line connections (unless your provider only supports static
  1481. address assignment). Most of the MacTCP parameters (gateway, subnet
  1482. mask, etc.) are either irrelevant here, or will be set by the SLIP or
  1483. PPP driver at connection time.
  1484.  
  1485. Let's now look at two most popular serial IP drivers for the Mac:
  1486. MacPPP and InterSLIP. They are both freely accessible from on-line
  1487. sources. I don't know much about modems, and I use SLIP and PPP only
  1488. occasionally, so the sections that follow are not likely to help you
  1489. troubleshoot difficult problems. Adam Engst's book mentioned in Part
  1490. II.2 has much more information on the subject. You can also receive
  1491. some help by sending an e-mail note to tisk-faq@tidbits.com.
  1492.  
  1493.  
  1494. 3. InterSlip
  1495.  
  1496. Start up InterSLIP Setup. Create a new setup using the File menu.
  1497. Double-click on it to open it. Set the modem parameters, remember
  1498. about hardware handshaking. Opening InterSLIP Setup will have created
  1499. a folder InterSLIP Folder:Gateway Scripts inside the Preferences
  1500. Folder in the System Folder. Create your connection script, which is
  1501. a text file (see simple example below), and put it in that folder.
  1502. You should now be able to select that file in the Gateway setting in
  1503. InterSLIP Setup.
  1504.  
  1505. You can now set other parameters. I have the nameserver entered
  1506. manually in InterSLIP, RFC compression on, hardware handshake,
  1507. Hayes-Compatible modem (I use an AT&T Dataport 14.4). IP address and
  1508. MTU Size are empty; they will be obtained from the SLIP server at
  1509. connection time. Username and password will have to be set to values
  1510. you were given by the SLIP administrators, or left blank if the
  1511. server does not require them.
  1512.  
  1513. Here is a simple connection script which should work with a server
  1514. that doesn't do user authentication. Most real-life situations will
  1515. call for a more complex one.
  1516.  
  1517. !
  1518. @originate
  1519. note "Waiting for prompt"
  1520. matchclr
  1521. ! edit this to match the prompt your server gives
  1522. matchstr 1 4 "TSERVER>"
  1523. matchread 50
  1524. note "Gateway not responding!"
  1525. exit -1
  1526. !
  1527. @label 99
  1528. pause 1
  1529. sound
  1530. pause 60
  1531. exit -1
  1532. !
  1533. @label 4
  1534. note "Requesting SLIP"
  1535. write "slip\13"
  1536. matchstr 1 5 "Entering SLIP mode."
  1537. matchread 120
  1538. note "Cannot invoke SLIP mode"
  1539. jump 99
  1540. !
  1541. @label 5
  1542. matchexp 1 6
  1543. "[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*\\."
  1544. matchread 120
  1545. note "No IP address given"
  1546. jump 99
  1547. !
  1548. @label 6
  1549. setip "^0"
  1550. matchclr
  1551. matchexp 1 7 "[0-9][0-9]*"
  1552. matchread 120
  1553. note "No MTU value"
  1554. jump 99
  1555. !
  1556. @label 7
  1557. setmtu "^0"
  1558. exit 0
  1559.  
  1560.  
  1561. 4. MacPPP
  1562.  
  1563. If you have access to a PPP server, you may want to try the freely
  1564. available MacPPP driver from Merit and University of Michigan. It is
  1565. available on most Mac archives, e.g. on ftp.tidbits.com in
  1566. /pub/tidbits/tisk/tcp. Rather complete documentation available from
  1567. the same sources. As with InterSLIP, it is crucial to get the
  1568. handshaking settings straight.
  1569.  
  1570. Instead of a script, MacPPP uses a set of edit fields in which you
  1571. enter the strings to wait for, and responses to send in order to
  1572. negotiate connection parameters. In the simplest scenario you would
  1573. simply tell MacPPP to wait for your server's prompt, and then send a
  1574. command requesting PPP mode. It is easy to make a mistake here,
  1575. forget to end the response with a carriage return, etc.
  1576.  
  1577. To see what your server sends during connection attempts, and to
  1578. experiment with the responses it may expect, you can simply dial into
  1579. it using a plain-vanilla terminal emulation package, e.g. ZTerm, and
  1580. jot down what happens on the screen.
  1581.  
  1582.  
  1583. Appendix D. MacTCP error codes
  1584.  
  1585. Please note: the information in this section is in no way blessed or
  1586. authorized by Apple Computer, Inc. It is simply a summary of
  1587. information contained in publicly available header files related to
  1588. MacTCP (those are Copyright: (C) 1984-1994 by Apple Computer, Inc.)
  1589. The list is not necessarily accurate nor up to date.
  1590.  
  1591. -23000    bad network configuration 
  1592. -23001    bad IP configuration error 
  1593. -23002    missing IP or LAP configuration error 
  1594. -23003    error in MacTCP load 
  1595. -23004    error in getting address 
  1596. -23005    connection is closing 
  1597. -23006    invalid length (of what??) 
  1598. -23007    request conflicts with existing connection 
  1599. -23008    connection does not exist 
  1600. -23009    insufficient resources to perform request 
  1601. -23010    invalid stream pointer 
  1602. -23011    stream already open 
  1603. -23012    connectionTerminated 
  1604. -23013    invalidBufPtr 
  1605. -23014    invalidRDS 
  1606. -23014    invalidWDS 
  1607. -23015    openFailed 
  1608. -23016    commandTimeout 
  1609. -23017    duplicateSocket 
  1610.  
  1611. -23032    Packet too large to send w/o fragmenting 
  1612. -23033    destination not responding 
  1613. -23035    ICMP echo timed-out 
  1614. -23036    no memory to send fragmented pkt 
  1615. -23037    can't route packet off-net 
  1616.  
  1617. -23041    nameSyntaxErr 
  1618. -23042    cacheFault *
  1619. -23043    noResultProc 
  1620. -23044    noNameServer 
  1621. -23045    authNameErr 
  1622. -23046    noAnsErr 
  1623. -23047    dnrErr 
  1624. -23048    outOfMemory 
  1625.